package com.xuelang.pipeline.artifact.app.resource.converter;

import com.xuelang.pipeline.artifact.client.resource.dto.ArtifactNamespaceDTO;
import com.xuelang.pipeline.artifact.domain.resource.ArtifactNamespace;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

/**
 * 镜像仓库命名空间DTO与镜像仓库命名空间实体转换器
 *
 * @author xiwen.zxg
 * @since 2024/5/15
 */
@Mapper
public interface ArtifactNamespaceDTOToArtifactNamespaceConverter {
    ArtifactNamespaceDTOToArtifactNamespaceConverter INSTANCE = Mappers.getMapper(ArtifactNamespaceDTOToArtifactNamespaceConverter.class);

    /**
     * ArtifactNamespace转化为ArtifactNamespaceDTO
     * @param artifactNamespace
     * @return
     */
    ArtifactNamespaceDTO artifactNamespaceToArtifactNamespaceDTO(ArtifactNamespace artifactNamespace);

    /**
     * ArtifactNamespaceDTO转化为ArtifactNamespace
     * @param artifactNamespaceDTO
     * @return
     */
    ArtifactNamespace artifactNamespaceDTOToArtifactNamespace(ArtifactNamespaceDTO artifactNamespaceDTO);
}
